Introduction
1.
I. Spring Framework 总览
1.1.
1. 开始 Spring
1.2.
2. 介绍 Spring Framework
1.2.1.
2.1. 依赖注入和控制反转
1.2.2.
2.2. 模块
1.2.3.
2.3. 使用场景
1.3.
II. Spring Framework 4.x 新特性
1.4.
3. Spring Framework 4.0中的新功能和增强功能
1.4.1.
3.1. Improved Getting Started Experience
1.4.2.
3.2. Removed Deprecated Packages and Methods
1.4.3.
3.3. Java 8 (as well as 6 and 7)
1.4.4.
3.4. Java EE 6 and 7
1.4.5.
3.5. Groovy Bean Definition DSL
1.4.6.
3.6. Core Container Improvements
1.4.7.
3.7. General Web Improvements
1.4.8.
3.8. WebSocket, SockJS, and STOMP Messaging
1.4.9.
3.9. Testing Improvements
1.5.
4. Spring Framework 4.1中的新功能和增强功能
1.5.1.
4.1. JMS Improvements
1.5.2.
4.2. Caching Improvements
1.5.3.
4.3. Web Improvements
1.5.4.
4.4. WebSocket STOMP Messaging Improvements
1.5.5.
4.5. Testing Improvements
1.6.
III. Core Technologies
1.7.
5. The IoC container
1.7.1.
5.1. Introduction to the Spring IoC container and beans
1.7.2.
5.2. Container overview
1.7.3.
5.3. Bean overview
1.7.4.
5.4. Dependencies
1.7.5.
5.5. Bean scopes
1.7.6.
5.6. Customizing the nature of a bean
1.7.7.
5.7. Bean definition inheritance
1.7.8.
5.8. Container Extension Points
1.7.9.
5.10. Classpath scanning and managed components
1.7.10.
5.11. Using JSR 330 Standard Annotations
1.7.11.
5.12. Java-based container configuration
1.7.12.
5.13. Environment abstraction
1.7.13.
5.14. Registering a LoadTimeWeaver
1.7.14.
5.15. Additional Capabilities of the ApplicationContext
1.7.15.
5.16. The BeanFactory
1.8.
6. Resources
1.8.1.
6.1. Introduction
1.8.2.
6.2. The Resource interface
1.8.3.
6.3. Built-in Resource implementations
1.8.4.
6.4. The ResourceLoader
1.8.5.
6.5. The ResourceLoaderAware interface
1.8.6.
6.6. Resources as dependencies
1.8.7.
6.7. Application contexts and Resource paths
1.9.
7. Validation, Data Binding, and Type Conversion
1.9.1.
7.1. Introduction
1.9.2.
7.2. Validation using Spring’s Validator interface
1.9.3.
7.3. Resolving codes to error messages
1.9.4.
7.4. Bean manipulation and the BeanWrapper
1.9.5.
7.5. Spring Type Conversion
1.9.6.
7.6. Spring Field Formatting
1.9.7.
7.7. Configuring a global date & time format
1.9.8.
7.8. Spring Validation
1.10.
8. Spring Expression Language-SpEL
1.10.1.
8.1. Introduction
1.10.2.
8.2. Feature Overview
1.10.3.
8.3. Expression Evaluation using Spring’s Expression Interface
1.10.4.
8.4. Expression support for defining bean definitions
1.10.5.
8.5. Language Reference
1.10.6.
8.6. Classes used in the examples
1.11.
9. Aspect Oriented Programming with Spring
1.11.1.
9.1. Introduction
1.11.2.
9.2. @AspectJ support
1.11.3.
9.3. Schema-based AOP support
1.11.4.
9.4. Choosing which AOP declaration style to use
1.11.5.
9.5. Mixing aspect types
1.11.6.
9.6. Proxying mechanisms
1.11.7.
9.7. Programmatic creation of @AspectJ Proxies
1.11.8.
9.8. Using AspectJ with Spring applications
1.11.9.
9.9. Further Resources
1.12.
10. Spring AOP APIs
1.12.1.
10.1. Introduction
1.12.2.
10.2. Pointcut API in Spring
1.12.3.
10.3. Advice API in Spring
1.12.4.
10.4. Advisor API in Spring
1.12.5.
10.5. Using the ProxyFactoryBean to create AOP proxies
1.12.6.
10.6. Concise proxy definitions
1.12.7.
10.7. Creating AOP proxies programmatically with the ProxyFactory
1.12.8.
10.8. Manipulating advised objects
1.12.9.
10.9. Using the "auto-proxy" facility
1.12.10.
10.10. Using TargetSources
1.12.11.
10.11. Defining new Advice types
1.12.12.
10.12. Further resources
1.13.
11. Testing
1.13.1.
11.1. Introduction to Spring Testing
1.13.2.
11.2. Unit Testing
1.13.3.
11.3. Integration Testing
1.13.4.
11.4. Further Resources
1.14.
IV. 数据访问
1.15.
12. Transaction Management
1.15.1.
12.1. Introduction to Spring Framework transaction management
1.15.2.
12.2. Advantages of the Spring Framework’s transaction support model
1.15.3.
12.3. Understanding the Spring Framework transaction abstraction
1.15.4.
12.4. Synchronizing resources with transactions
1.15.5.
12.5. Declarative transaction management
1.15.6.
12.6. Programmatic transaction management
1.15.7.
12.7. Choosing between programmatic and declarative transaction management
1.15.8.
12.8. Application server-specific integration
1.15.9.
12.9. Solutions to common problems
1.15.10.
12.10. Further Resources
1.16.
13. DAO support
1.16.1.
13.1. Introduction
1.16.2.
13.2. Consistent exception hierarchy
1.16.3.
13.3. Annotations used for configuring DAO or Repository classes
1.17.
14. Data access with JDBC
1.17.1.
14.1. Introduction to Spring Framework JDBC
1.17.2.
14.2. Using the JDBC core classes to control basic JDBC processing and error handling
1.17.3.
14.3. Controlling database connections
1.17.4.
14.4. JDBC batch operations
1.17.5.
14.5. Simplifying JDBC operations with the SimpleJdbc classes
1.17.6.
14.6. Modeling JDBC operations as Java objects
1.17.7.
14.7. Common problems with parameter and data value handling
1.17.8.
14.8. Embedded database support
1.17.9.
14.9. Initializing a DataSource
1.18.
15. 对象关系映射(ORM)数据访问
1.18.1.
15.1. Spring 中的 ORM
1.18.2.
15.2. 常见的 ORM 集成方面的注意事项
1.18.3.
15.3. Hibernate
1.18.4.
15.4. JDO
1.18.5.
15.5. JPA
1.19.
16. Marshalling XML using O/X Mappers
1.19.1.
16.1. Introduction
1.19.2.
16.2. Marshaller and Unmarshaller
1.19.3.
16.3. Using Marshaller and Unmarshaller
1.19.4.
16.4. XML Schema-based Configuration
1.19.5.
16.5. JAXB
1.19.6.
16.6. Castor
1.19.7.
16.7. XMLBeans
1.19.8.
16.8. JiBX
1.19.9.
16.9. XStream
2.
V. The Web
2.1.
17. Web MVC framework
2.1.1.
17.1. Introduction to Spring Web MVC framework
2.1.2.
17.2. The DispatcherServlet
2.1.3.
17.3. Implementing Controllers
2.1.4.
17.4. Handler mappings
2.1.5.
17.5. Resolving views
2.1.6.
17.6. Using flash attributes
2.1.7.
17.7. Building URIs
2.1.8.
17.8. Using locales
2.1.9.
17.9. Using themes
2.1.10.
17.10. Spring’s multipart (file upload) support
2.1.11.
17.11. Handling exceptions
2.1.12.
17.12. Web Security
2.1.13.
17.13. Convention over configuration support
2.1.14.
17.14. ETag support
2.1.15.
17.15. Code-based Servlet container initialization
2.1.16.
17.16. Configuring Spring MVC
2.2.
18. View technologies
2.2.1.
18.1. Introduction
2.2.2.
18.2. JSP & JSTL
2.2.3.
18.3. Tiles
2.2.4.
18.4. Velocity & FreeMarker
2.2.5.
18.5. XSLT
2.2.6.
18.6. Document views (PDF/Excel)
2.2.7.
18.7. JasperReports
2.2.8.
18.8. Feed Views
2.2.9.
18.9. XML Marshalling View
2.2.10.
18.10. JSON Mapping View
2.2.11.
18.11. XML Mapping View
2.3.
19. Integrating with other web frameworks
2.3.1.
19.1. Introduction
2.3.2.
19.2. Common configuration
2.3.3.
19.3. JavaServer Faces 1.2
2.3.4.
19.4. Apache Struts 2.x
2.3.5.
19.5. Tapestry 5.x
2.3.6.
19.6. Further Resources
2.4.
20. Portlet MVC Framework
2.4.1.
20.1. Introduction
2.4.2.
20.2. The DispatcherPortlet
2.4.3.
20.3. The ViewRendererServlet
2.4.4.
20.4. Controllers
2.4.5.
20.5. Handler mappings
2.4.6.
20.6. Views and resolving them
2.4.7.
20.7. Multipart (file upload) support
2.4.8.
20.8. Handling exceptions
2.4.9.
20.9. Annotation-based controller configuration
2.4.10.
20.10. Portlet application deployment
2.5.
21. WebSocket Support
2.5.1.
21.1. Introduction
2.5.2.
21.2. WebSocket API
2.5.3.
21.3. SockJS Fallback Options
2.5.4.
21.4. STOMP Over WebSocket Messaging Architecture
3.
VI. Integration
3.1.
22. Remoting and web services using Spring
3.1.1.
22.1. Introduction
3.1.2.
22.2. Exposing services using RMI
3.1.3.
22.3. Using Hessian or Burlap to remotely call services via HTTP
3.1.4.
22.4. Exposing services using HTTP invokers
3.1.5.
22.5. Web services
3.1.6.
22.6. JMS
3.1.7.
22.7. AMQP
3.1.8.
22.8. Auto-detection is not implemented for remote interfaces
3.1.9.
22.9. Considerations when choosing a technology
3.1.10.
22.10. Accessing RESTful services on the Client
3.2.
23. Enterprise JavaBeans (EJB) integration
3.2.1.
23.1. Introduction
3.2.2.
23.2. Accessing EJBs
3.2.3.
23.3. Using Spring’s EJB implementation support classes
3.3.
24. JMS (Java Message Service)
3.3.1.
24.1. Introduction
3.3.2.
24.2. Using Spring JMS
3.3.3.
24.3. Sending a Message
3.3.4.
24.4. Receiving a message
3.3.5.
24.5. Support for JCA Message Endpoints
3.3.6.
24.6. Annotation-driven listener endpoints
3.3.7.
24.7. JMS Namespace Support
3.4.
25. JMX
3.4.1.
25.1. Introduction
3.4.2.
25.2. Exporting your beans to JMX
3.4.3.
25.3. Controlling the management interface of your beans
3.4.4.
25.4. Controlling the ObjectNames for your beans
3.4.5.
25.5. JSR-160 Connectors
3.4.6.
25.6. Accessing MBeans via Proxies
3.4.7.
25.7. Notifications
3.4.8.
25.8. Further Resources
3.5.
26. JCA CCI
3.5.1.
26.1. Introduction
3.5.2.
26.2. Configuring CCI
3.5.3.
26.3. Using Spring’s CCI access support
3.5.4.
26.4. Modeling CCI access as operation objects
3.5.5.
26.5. Transactions
3.6.
27. Email
3.6.1.
27.1. Introduction
3.6.2.
27.2. Usage
3.6.3.
27.3. Using the JavaMail MimeMessageHelper
3.7.
28. Task Execution and Scheduling
3.7.1.
28.1. Introduction
3.7.2.
28.2. The Spring TaskExecutor abstraction
3.7.3.
28.3. The Spring TaskScheduler abstraction
3.7.4.
28.4. Annotation Support for Scheduling and Asynchronous Execution
3.7.5.
28.5. The Task Namespace
3.7.6.
28.6. Using the Quartz Scheduler
3.8.
29. Dynamic language support
3.8.1.
29.1. Introduction
3.8.2.
29.2. A first example
3.8.3.
29.3. Defining beans that are backed by dynamic languages
3.8.4.
29.4. Scenarios
3.8.5.
29.5. Bits and bobs
3.8.6.
29.6. Further Resources
3.9.
30. Cache Abstraction
3.9.1.
30.1. Introduction
3.9.2.
30.2. Understanding the cache abstraction
3.9.3.
30.3. Declarative annotation-based caching
3.9.4.
30.4. JCache (JSR-107) annotations
3.9.5.
30.5. Declarative XML-based caching
3.9.6.
30.6. Configuring the cache storage
3.9.7.
30.7. Plugging-in different back-end caches
3.9.8.
30.8. How can I set the TTL/TTI/Eviction policy/XXX feature?
4.
VII. Appendices
4.1.
31. Migrating to Spring Framework 4.0
4.2.
32. Classic Spring Usage
4.2.1.
32.1. Classic ORM usage
4.2.2.
32.2. Classic Spring MVC
4.2.3.
32.3. JMS Usage
4.3.
33. Classic Spring AOP Usage
4.3.1.
33.1. Pointcut API in Spring
4.3.2.
33.2. Advice API in Spring
4.3.3.
33.3. Advisor API in Spring
4.3.4.
33.4. Using the ProxyFactoryBean to create AOP proxies
4.3.5.
33.5. Concise proxy definitions
4.3.6.
33.6. Creating AOP proxies programmatically with the ProxyFactory
4.3.7.
33.7. Manipulating advised objects
4.3.8.
33.8. Using the "autoproxy" facility
4.3.9.
33.9. Using TargetSources
4.3.10.
33.10. Defining new Advice types
4.3.11.
33.11. Further resources
4.4.
34. XML Schema-based configuration
4.4.1.
34.1. Introduction
4.4.2.
34.2. XML Schema-based configuration
4.5.
35. Extensible XML authoring
4.5.1.
35.1. Introduction
4.5.2.
35.2. Authoring the schema
4.5.3.
35.3. Coding a NamespaceHandler
4.5.4.
35.4. BeanDefinitionParser
4.5.5.
35.5. Registering the handler and the schema
4.5.6.
35.6. Using a custom extension in your Spring XML configuration
4.5.7.
35.7. Meatier examples
4.5.8.
35.8. Further Resources
4.6.
36. spring.tld
4.6.1.
36.1. Introduction
4.6.2.
36.2. the bind tag
4.6.3.
36.3. the escapeBody tag
4.6.4.
36.4. the hasBindErrors tag
4.6.5.
36.5. the htmlEscape tag
4.6.6.
36.6. the message tag
4.6.7.
36.7. the nestedPath tag
4.6.8.
36.8. the theme tag
4.6.9.
36.9. the transform tag
4.6.10.
36.10. the url tag
4.6.11.
36.11. the eval tag
4.7.
37. spring-form.tld
4.7.1.
37.1. Introduction
4.7.2.
37.2. the checkbox tag
4.7.3.
37.3. the checkboxes tag
4.7.4.
37.4. the errors tag
4.7.5.
37.5. the form tag
4.7.6.
37.6. the hidden tag
4.7.7.
37.7. the input tag
4.7.8.
37.8. the label tag
4.7.9.
37.9. the option tag
4.7.10.
37.10. the options tag
4.7.11.
37.11. the password tag
4.7.12.
37.12. the radiobutton tag
4.7.13.
37.13. the radiobuttons tag
4.7.14.
37.14. the select tag
4.7.15.
37.15. the textarea tag
Published with GitBook
A
A
Serif
Sans
White
Sepia
Night
Share on Twitter
Share on Google
Share on Facebook
Share on Weibo
Share on Instapaper
spring-framework-4-reference